package net.realsee.gcl.service;

import net.realsee.gcl.domain.bo.mes.*;

/**
 * 协鑫MES接口
 *
 * @author
 * @since 2023/8/22 13:28
 */
public interface IGclMesService {

    /**
     * 任务创建
     */
    GclMesOperateResult taskCreate(GclMesTaskCreateReq taskCreateReq);

    /**
     * 任务取消
     * <p>
     * runFlag = 0时，执行中不可取消
     * runFlag = 1时，执行中可以强制取消，agv放下货架就走
     */
    GclMesOperateResult taskCancel(GclMesTaskCancelReq taskCancelReq);

    /**
     * 修改优先级
     */
    GclMesOperateResult taskUpdate(GclMesTaskUpdateReq taskUpdateReq);

    /**
     * 任务状态上报（发送MES）
     */
    GclMesOperateResult taskStatusReportToMes(GclMesTaskStatusReportReq taskStatusReportReq);

    /**
     * 任务取消（发送MES）
     */
    GclMesOperateResult taskCancelToMes(String taskCode);

    /**
     * 脱胶下工装完成通知（发送MES）
     */
    GclMesOperateResult tjMachineToolOutToMes(String machine);

}
